package com.jinzecloud.reportapproval.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.jinzecloud.reportapproval.vo.AdminRoleVo;
import com.jinzecloud.reportapproval.vo.AdminVo;
import com.jinzecloud.reportapproval.bean.Admin;
import com.jinzecloud.reportapproval.dto.Param;
import com.jinzecloud.reportapproval.utils.PageUtils;
import com.jinzecloud.reportapproval.utils.R;
import com.jinzecloud.reportapproval.vo.AdminVos;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;
import java.util.Map;

/**
 * 管理员表
 *
 * @author æ­å°
 * @email 1971240051@qq.com
 * @date 2024-09-03 12:10:45
 */
public interface AdminService extends IService<Admin> {

    PageUtils queryPage(Param param);

//    R login(Admin admin);

    int getIdByName(String name);

    void getCode(HttpServletRequest request, HttpServletResponse response, String uuid) throws Exception;

    R login(AdminVo adminVo);

    R saveAdmin(AdminRoleVo adminRoleVo);

    R fileUplod(String adminId, MultipartFile file) throws IOException;

    void updateByIdAdminRoleVo(AdminVos adminRoleVo);

    AdminVos getByIdRoleUser(Integer adId);

    Map<String, Object> Logout(String token);

    List<Admin> getByIdAndName();
}

